home *** CD-ROM | disk | FTP | other *** search
/ Spanish Scene 1 / SpanishScene1.iso / spanish pack n°1 by llfb / revistas / fanzine / fanzine01.dms / fanzine01.adf / 21 < prev    next >
Text File  |  1990-12-11  |  8KB  |  221 lines

  1.  
  2.  ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  3.  
  4.                   G U R U S     Y    G U R U S I T O S
  5.  
  6.  ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
  7.  
  8.  
  9.  (c) Warlord
  10.  
  11.  
  12.  
  13.  > LOAD DEMO.S
  14.  OK
  15.  
  16.         ......
  17.  
  18.         Cmove   $28c1,Diwstop   ; Display Window X + Y Stop
  19.         Cmove   $38,Ddfstrt     ; Data Fetch Start
  20.         Cmove   $d0,Ddfstop     ; Data Fetch Stop
  21.         Cmove   $0,Bpl1mod      ; Odd Bitplane Modulo
  22.         Cmove   $0,Bpl2mod      ; Even Bitplane Modulo
  23.  
  24.         Cmove   $1200,Bplcon0   ; Bitplane Control Register
  25. plane1l Cmove   $0000,Bpl1ptl   ; Address Pointer Lower Word
  26. plane1h Cmove   $0000,Bpl1pth   ; Address Pointer Upper Word
  27.  
  28.         Cmove   $000,color00    ; $dff180 colour 0
  29.  
  30.         ......
  31.  
  32.  > ASSEMBLE
  33.  Pass 1
  34.  Pass 2
  35.  550 lines assembled into 670 bytes executable relocatable code
  36.  40345 bytes used
  37.  OK
  38.  
  39.  > RUN
  40.  
  41.                   Software error - task held
  42.                   Finish ALL disk activity
  43.                   Select CANCEL to reset/debug
  44.  
  45.  
  46.  
  47.   ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ Aaaaaaaaaaaaahhhhhhhhhhhhhhhh !!!!!!!!!!!
  48.  
  49.   ¡¡ OTRO GURU !!  ¿¿ POR QUE??  ¿¿ QUE HE HECHO YO PARA MERECER ESTO ??
  50.  
  51.   ¡ LOS ODIO ! ... ¡ODIO A LOS GURUS! ... ¡ME VENGARE! ... ¡¡ VENGANZA !!
  52.   ...
  53.  
  54.    Esta es la reacción típica de un esforzado programador ante la agradable
  55.   visita de nuestros amigos los gurus. ¡Pero no debiera de ser así!, ¡Debe-
  56.   mos recibirles bien! ... Decirles: ¡Oh gracias señor guru!, ¡encantado de
  57.   que me visite!, ¿y porqué?, porque nos dá  la información exacta de dónde
  58.   se ha cometido nuestro fallo:
  59.  
  60.        Software Failure.       Press left mouse button to continue.
  61.                Guru Meditation #02010009.00009310
  62.  
  63.  
  64.    Para  los curiosos, vamos a intentar explicar  mas o menos su significa-
  65.   do. De todos modos explicar todos los terminos  que  aquí  aparecen sería
  66.   como  escribir aquí el "Rom Kernel Manual", al que remito a los interesa-
  67.   dos.
  68.  
  69.  
  70.   Codigo especifico del error -----+         +--- Direccion de trabajo
  71.                                    |         |      "Task address"
  72.                             02 01 0009 . 00009310
  73.                              |  |
  74.       Numero del subsistema -+  +--- Codigo general del error
  75.  
  76.   
  77.  
  78.    La  "Task address" es  simplemente  la dirección de la RAM a donde apun-
  79.   taba  cuando  se  produjo  el  error. En  nuestro  ejemplo  ocurrió en la
  80.   dirección  9310 (en hexadecimal). En este caso ello significa que ocurrió
  81.   en  el  " CLI process number 1 " (Proceso 1 del CLI). Si  estás depurando
  82.   (debugging) un  programa  que  utiliza  muchas direcciones distintas esto
  83.   puede serte útil.Esto me informa de que el problema estaba en mi programa
  84.   y no el sistema.
  85.  
  86.     En la parte izqda aparece un numero formado por tres campos:
  87.  
  88.    Los  primeros  dos digitos, nos  dice  que  módulo del sistema operativo
  89.   arrojó el error. En nuestro ejemplo era el 02, que nos  informa de que el
  90.   error ocurrió en la "graphics library"(libreria de gráficos)
  91.  
  92.    El  primer  digito digito es aún mas divertido. El bit mas significativo
  93.   de  este  dígito  nos dice si el sistema  se  puede recuperar o no. Si el
  94.   número  hubiese  sido 82  en  lugar  de 02, hubiera significado la muerte
  95.   fulminante  y posterior reseteo del amiga. La notación hexadecimal  puede
  96.   dar lugar a confusión. Si el primer  de los digitos es mayor que 7 (hexa-
  97.   decimal) entonces réstale 8. Así, si hubiese  sido B1, (A=10, B=11, C=12,
  98.   D=13,E=14,F=15) al restarle 8 queda:
  99.         
  100.              B - 8  = 3
  101.                      \|/
  102.    Nos  queda  pues: 31.Esto quiere decir que el error lo dio el Workbench.
  103.   La tabla de los codigos de identificación es:
  104.  
  105.  
  106.           Exec Library        01     Console Device      11
  107.           Graphics Library    02     GamePort Device     12 
  108.           Layers Library      03     Keyboard Device     13
  109.           Intuition Library   04     TrackDisk Device    14
  110.           Math Library        05     Timer Device        15
  111.           CList Library       06     CIA Resource        20
  112.           DOS Library         07     Disk Resource       21
  113.           RAM Library         08     Misc Resource       22
  114.           Icon Library        09     BootStrap           30
  115.           Audio Device        10     Workbench           31
  116.  
  117.  
  118.    Los  dos  digitos  siguientes  especifican el  tipo general de error que
  119.   ha ocurrido.La mayoria de las veces es 00,aunque tambien pueden ser otros
  120.   como  se  indica a continuacion. En nuestro caso es el 01, lo que viene a
  121.   significar  que  la  libreria  de  graficos no ha sido capaz de encontrar
  122.   suficiente memoria libre
  123.      
  124.      Memoria insuficiente      01    error de apertura de dispositivo  04
  125.      error al crear libreria   02    error de apertura de medio        05
  126.      error de apertura de lib. 03    error de entrada/salida           06
  127.  
  128.    Los  cuatro  últimos  dígitos  del numero de alerta, nos dan información
  129.   específica del  error. La interpretación  de  este depende del codigo del
  130.   subsistema. Pueden aparecer numeros iguales con  significados  distintos.
  131.   En  nuestro ejemplo  el codigo especifico es el 0009. Como hablamos de un
  132.   error  en  la  libreria de gráficos,podemos determinar que el error es el
  133.   llamado  "TextTmpRas"  que  indica  un fallo en la llamada a la rutina de
  134.   texto  (que imprime un caracter en la pantalla), pues ésta se ha que dado
  135.   sin memoria al intentar asignar memoria para la estructura de datos.
  136.  
  137.    Un caso  especial  es el  causado  por  una trampa (trap) del 68000 (por
  138.   ejemplo  se  ejecuta  un codigo ilegal). Su ejecucion causará una alerta.
  139.   Cuando esto suceda,la parte izquierda  del guru será  un  valor  pequeño,
  140.   mientras el codigo del subsistema y el codigo general serán 0. Los "nume-
  141.   ros trampa" son parte del chip 68000, y no son asignados  por la ROM como
  142.   los  demás códigos.La mayoria de ellos no son mostrados por el ordenador.
  143.   La siguiente, es una lista de los posibles errores:
  144.  
  145.        Error de Bus           02      Violacion de privil.   08
  146.        Error de direccion     03      Rasto de la instr.     09
  147.        Instruction ilegal     04      Emulacion linea A      0A
  148.        Divides por 0          05      emulacion linea F      0B
  149.  
  150.        instruccion CHK        06      TRAP 0 ... 15          20 ... 2F
  151.        TRAPV (sobrecarga)     07
  152.  
  153.      La siguiente es una lista de los codigos especificos de error:
  154.  
  155.     Exec Library
  156.     ExcptVect      81000001    
  157.     BaseChkSum     81000002    
  158.     LibChkSum      81000003
  159.     LibMem         81000004
  160.     MemCorrupt     81000005    
  161.     IntrMem        81000006    
  162.  
  163.     Graphics Library
  164.     CopDisplay     82010001    
  165.     CopInstr       82010002    
  166.     CopListOver    82000003
  167.     CopIListOver   82000004
  168.     CopListHead    82010005
  169.     LongFrame      82010006
  170.     ShortFrame     82010007
  171.     FloodFill      82010008
  172.     TextTmpRas     02010009
  173.     BltBitMap      8201000A
  174.  
  175.     Intuition Library
  176.     GadgetType     84000001
  177.     CreatePort     84010002
  178.     ItemAlloc      84010003
  179.     SubAlloc       84010004
  180.     PlaneAlloc     84010005
  181.     ItemBoxTop     84000006    
  182.     OpenScreen     84010007
  183.     OpenScrnRast   84010008    
  184.     SysScrnType    84000009
  185.     AddSWGadget    8401000A    
  186.     OpenWindow     8401000B
  187.     BadState       8400000C    
  188.     BadMessage     8400000D
  189.     WeirdEcho      8400000E    
  190.     NoConsole      8400000F
  191.  
  192.     DOS Library
  193.  
  194.     StartMem       07010001
  195.     EndTask        07000002    
  196.     QPktFail       07000003    
  197.     AsyncPkt       07000004    
  198.     FreeVec        07000005    
  199.     DiskBlkSeq     07000006    
  200.     BitMap         07000007
  201.     KeyFree        07000008
  202.     BadChkSum      07000009
  203.     DiskError      0700000A
  204.     KeyRange       0700000B
  205.     BadOverlay     0700000C    
  206.  
  207.     TrackDisk Device
  208.     TDCalibSeek    14000001    
  209.     TDDelay        14000002    
  210.  
  211.     Timer Device
  212.     TMBadReq       15000001    
  213.  
  214.     Disk Resource
  215.     DRHasDisk      21000001
  216.     DRIntNoAct     21000002
  217.  
  218.     BootStrap
  219.     BootError      30000001
  220.  
  221.